package heap

import "jvm/nzpJvm/classfile"

// 一个ClassMember结构体代表一个Class中的成员，可以是方法，也可以是字段
type ClassMember struct {
	accessFlags uint16
	name string
	descriptor string
	// 此成员所属的类
	class *Class
}

// 根据解析好的Class文件中的信息创建ClassMember
func (self *ClassMember) copyMemberInfo(memberInfo *classfile.MemberInfo){
	self.accessFlags=memberInfo.AccessFlags()
	self.name=memberInfo.Name()
	self.descriptor=memberInfo.Descriptor()
}

// get方法
func (self *ClassMember) AccessFlags()uint16{
	return self.accessFlags
}
func (self *ClassMember) Name()string{
	return self.name
}
func (self *ClassMember) Descriptor()string{
	return self.descriptor
}
func (self *ClassMember) Class() *Class{
	return self.class
}
